//百度地图API功能
var map_h =$(document).height()-$(".showBaiduMap").height()-180;
$("#allmap").height(map_h)
$(function(){
	var member_id = $("#member_id").val();
	showEnclosure(member_id);
});
function showEnclosure(member_id){
	//获取该会员已绘制的电子围栏信息
	 $.ajax({   
         type: "POST",  
         dataType:"html",  
         url: '../enclosure/enclosureShow',      
         data: {
	       	member_id:member_id
         }, 
         async: true,
         success: function(data) {
       		enclosureShow(data);
         }  
     });         
}
var map;
var drawingManager;
var overlays = [];
var count = 0;//画围栏点的个数
var overlaycomplete = function(e){
    overlays.push(e.overlay);
};
var route;//画多边形的经纬度json数据
var top_left_navigation = new BMap.NavigationControl();  //左上角，添加默认缩放平移控件

//展示电子围栏
function enclosureShow(data){
	 map = new BMap.Map("allmap");
	 map.addControl(top_left_navigation);     
	//创建缩放控件
//	 map.addControl(new BMap.NavigationControl());
	 map.enableScrollWheelZoom();    //启用滚轮放大缩小，默认禁用
	 map.enableContinuousZoom();    //启用地图惯性拖拽，默认禁用
	// 画图按钮控件添加到地图当中
	map.addControl(new ZoomControl());
	 //初始化画图工具
 	drawingManager = new BMapLib.DrawingManager(map, {
	    isOpen: false, //是否开启绘制模式
	    enableDrawingTool: true, //是否显示工具栏
	    drawingToolOptions: {
	        anchor: BMAP_ANCHOR_TOP_RIGHT, //位置
	        offset: new BMap.Size(5, 5), //偏离值
	        scale: 0.8 ,//工具栏缩放比例
	        drawingModes:[ BMAP_DRAWING_POLYGON,BMAP_DRAWING_CIRCLE]
	    },
	    circleOptions: styleOptions, //圆的样式
	    polygonOptions: styleOptions, //多边形的样式
	});
 	drawingManager.open = function() {
 		  map.clearOverlays();
 		 // 判断绘制状态是否已经开启
        if (this._isOpen == true){
            return true;
        }
        this._open();
     }
 	 //添加鼠标绘制工具监听事件，用于获取绘制结果
	drawingManager.addEventListener('overlaycomplete', function (e) {
	    if (e.drawingMode == BMAP_DRAWING_POLYGON) {//多边形围栏
			 route= e.overlay.getPath();
			 for(count in e.overlay.getPath()){
				count++
			  }
	    }else if(e.drawingMode == BMAP_DRAWING_CIRCLE){//圆形围栏
	    	route=null;
	    	$("#radii").val(e.overlay.getRadius());
	        $("#longitude").val(e.overlay.getCenter().lng);
	        $("#latitude").val(e.overlay.getCenter().lat);
	        //回显中文中心地址
//	        var pt = new BMap.Point(e.overlay.getCenter().lng,e.overlay.getCenter().lat);
//			var geoc = new BMap.Geocoder();    
//	     	geoc.getLocation(pt, function(rs){
//				var addComp = rs.addressComponents;
//				var lo = addComp.province+","+addComp.city+","+addComp.district+","+addComp.street+","+addComp.streetNumber;
//				$("#coordinate").text(lo);
//	   	    });     
	      
//	        $("#radius").html((e.overlay.getRadius()).toFixed(0));
	    }
	    drawingManager.close();
	});
 	 //回显电子围栏（多边形，圆形）
 	 if(data){
		 var jsonO = eval("("+data+")"); 
		 if(jsonO.length>0){
			 route = eval(jsonO[0].route);
			 mapZoom = eval(jsonO[0].mapZoom);
		 }
 		if (route !=null && route!=undefined && route.length > 0) {
 			 var lay=[];
	 		 for(var i=0; i< route.length;i++){
	 			 lay[i]=new BMap.Point(route[i].lng, route[i].lat);
	 		 }
	 		var center = new BMap.Point(route[0].lng,route[0].lat); 
			  map.centerAndZoom(center,mapZoom);
			  var Polygon = new BMap.Polygon(lay
		 	        	, {strokeColor:"red", strokeWeight:3, strokeOpacity:0.8 ,fillColor:"red", fillOpacity:0.6});
		 	        	map.addOverlay(Polygon); 
 		}else{
 	     	//显示gps行动轨迹 获取中心位置
	 		 if(jsonO.length > 0 && jsonO[0].loncenter != null && jsonO[0].latcenter!=null && jsonO[0].radii!=null 
	 				 && jsonO[0].mapZoom!=null ){
	 			 var loncenter  = jsonO[0].loncenter;
	 			 var latcenter  = jsonO[0].latcenter;
	 			 var radii  = jsonO[0].radii;
	 			 var mapZoom =jsonO[0].mapZoom;
	 			 $("#radii").val(radii);
	 		     $("#longitude").val(loncenter);
	 		     $("#latitude").val(latcenter);
	 			 var pt = new BMap.Point(loncenter,latcenter);
	 				var geoc = new BMap.Geocoder();    
	 		     	geoc.getLocation(pt, function(rs){
	 					var addComp = rs.addressComponents;
	 					var lo = addComp.province+","+addComp.city+","+addComp.district+","+addComp.street+","+addComp.streetNumber;
	 					$("#coordinate").text(lo);
	 		   	    });     
	 			 
	 			 var num = new Number(radii);
	 	         $("#radius").html(num.toFixed(0));
	 			 var center = new BMap.Point(loncenter,latcenter); 
	 			  map.centerAndZoom(center,mapZoom); 
	 			  //显示电子围栏范围
	 		     circle = new BMap.Circle(center, radii);
	 		     circle.setStrokeColor("red");    //边线颜色。
	 		     circle.setFillColor("red");      //填充颜色。当参数为空时，圆形将没有填充效果。
	 		     circle.setStrokeWeight(3);     //边线的宽度，以像素为单位。
	 		     circle.setStrokeOpacity(0.8);	   //边线透明度，取值范围0 - 1。
	 		     circle.setFillOpacity(0.6);      //填充的透明度，取值范围0 - 1。
	 		     circle.setStrokeStyle('solid');//边线的样式，solid或dashed。
	 		     map.addOverlay(circle);
	 		 } else{
	 			 var area=$("#provinceName").val()+$("#cityName").val()+$("#areaName").val();
	 			 map.centerAndZoom(area,13);
	 		 }
 		}
 	 }else{
		 var area=$("#provinceName").val()+$("#cityName").val()+$("#areaName").val();
		 map.centerAndZoom(area, 13);
	 }
}

function ZoomControl() {
    // 默认停靠位置和偏移量
    this.defaultAnchor = BMAP_ANCHOR_TOP_RIGHT;
    this.defaultOffset = new BMap.Size(10, 10);
}
var overlays = [];
var overlaycomplete = function(e){
    overlays.push(e.overlay);
};

var styleOptions = {
    strokeColor:"red",    //边线颜色。
    fillColor:"red",      //填充颜色。当参数为空时，圆形将没有填充效果。
    strokeWeight: 3,       //边线的宽度，以像素为单位。
    strokeOpacity: 0.8,	   //边线透明度，取值范围0 - 1。
    fillOpacity: 0.6,      //填充的透明度，取值范围0 - 1。
    strokeStyle: 'solid' //边线的样式，solid或dashed。
}

var drawingManager = new BMapLib.DrawingManager(map, {
    isOpen: false, //是否开启绘制模式
    enableDrawingTool: true, //是否显示工具栏
    drawingToolOptions: {
        anchor: BMAP_ANCHOR_TOP_RIGHT, //位置
        offset: new BMap.Size(5, 5), //偏离值
    },
    circleOptions: styleOptions, //圆的样式
    polygonOptions: styleOptions, //多边形的样式
});  
 //添加鼠标绘制工具监听事件，用于获取绘制结果
drawingManager.addEventListener('overlaycomplete', overlaycomplete);
function clearAll() {
	for(var i = 0; i < overlays.length; i++){
        map.removeOverlay(overlays[i]);
    }
    overlays.length = 0   
}

 
//保存电子围栏
function SafeRange() {
    var member_id = $("#member_id").val();
    var server_station_code = $("#server_station_code").val();
    var mapZoom =map.getZoom();
    var data = null;
    var radii = $("#radii").val();
	var lng = $("#longitude").val();
	var lat = $("#latitude").val();
    if (route !=null && route!=undefined && route.length > 0) {
    	data = JSON.stringify(route);
	    if(count<3){
	    	zhyAlert("请绘制完整的电子围栏");return;
	    }
	    $.ajax({
	        type: "POST",
	        url: "../enclosure/save",
	        data:{	
	     	   "route":data,
	     	   "member_id":member_id,
	     	   "server_station_code":server_station_code,
	     	   "mapZoom":mapZoom
	         },
	        success: function (data) {
	        	zhyAlert(data.message);
	        }
	    }, "json");
	}else if(radii!=null||lng!=null||lat!=null){
		$.ajax({
	        type: "POST",
	        url: "../enclosure/save",
	        data:{	
	           "radii":radii,
	       	   "longitude":lng,
	       	   "latitude":lat,
	     	   "member_id":member_id,
	     	   "server_station_code":server_station_code,
	     	   "mapZoom":mapZoom
	         },
	        success: function (data) {
	        	zhyAlert(data.message);
	        }
	    }, "json");
	}else{
		zhyAlert("请先绘制电子围栏");return;
	}
	
	
}

/*
百度搜索下拉框开始
* */

//百度地图API功能
var ac = new BMap.Autocomplete({
	"input" : "suggestId",
	"location" : map
	});
var myValue;
ac.addEventListener("onconfirm", function(e) {    //鼠标点击下拉列表后的事件
	var _value = e.item.value;
	myValue = _value.province +  _value.city +  _value.district +  _value.street +  _value.business;
	setPlace();
});
$(document).keyup(function(event){
	  if(event.keyCode ==13){
	   var  _value=ac.getResults().getPoi(0);
	   myValue = _value.province +  _value.city +  _value.district +  _value.street +  _value.business;
	   setPlace()
	  }
});
function setPlace(){
	map.clearOverlays();    //清除地图上所有覆盖物
	function myFun(){
		var pp = local.getResults().getPoi(0).point;    //获取第一个智能搜索的结果
		map.centerAndZoom(pp, 18);
		map.addOverlay(new BMap.Marker(pp));    //添加标注
		map.addOverlay( new ZoomControl());
	}
	var local = new BMap.LocalSearch(map, { //智能搜索
	  onSearchComplete: myFun
	});
	local.search(myValue);
}
/*
百度搜索下拉框结束
* */ 
$.get("https://mall.kanglaohui.com/external/zhy/showRecommend/10007.html",{},function(data){
	  $("#ifr").html(data);
},"html");